package database.util;

import java.util.LinkedList;

import javax.swing.ImageIcon;
import javax.swing.table.AbstractTableModel;

import database.domain.DatoTabla;
import database.domain.Equipo;

public class ModeloTablaEquipo extends AbstractTableModel{

	private static final long serialVersionUID = 890426525801538282L;
	private LinkedList<DatoTabla> datos= new LinkedList<DatoTabla>();
	private final String[] nombreColumnas={"Pic", "Name", "Desc", "Cost","Stats"};
	
	public int getColumnCount() {
		return nombreColumnas.length;
	}
	public int getRowCount() {
		return datos.size();
	}
	public Object getValueAt(int fil, int col) {
		if(col==0){
			//System.out.println("en get value at esta en col 0");
			return  (new UtilImages(((Equipo)datos.get(fil)).getRuta(), ((Equipo)datos.get(fil)).getTipo())).getImagen();
		}
		else{
			Object o= datos.get(fil).getDato(col);
			if(o==null) return new String(" ");
			else return o;
		}
	}
	public String getColumnName(int col){
		return nombreColumnas[col];
	}
	@SuppressWarnings({ "unchecked", "rawtypes" })
	public Class getColumnClass(int col){
		if(datos.size()!=0){
			if(col==0){
			//	System.out.println("get columm class 0");
				return ImageIcon.class;
			}else {
				return getValueAt(0, col).getClass();
			}
		}else{
			System.out.println("Datos.size es cero");
			return String.class;
		}

	}
	public ModeloTablaEquipo(){}
	public void insert(DatoTabla dato){
		datos.add(dato);
	}
}